package rladidxo.basic;

import java.util.Scanner;

//패키지 선언: 클래스 이름의 중복을 피하기 위해 사용
public class J04_SungJuk02 {
	// 클래스 정의
	// 클래스 이름은 파일명과 일치해야함
	// 클래스 이름은 반드시! 대문자로 시작
	public static void main(String[] args) {
		// 프로그램 실행 진입점
		// 모든 자바 프로그램은 여기서에서 시작함
		// 성적 처리 프로그램 v3
		// if 문을 switch문으로 변경
		Scanner scanner = new Scanner(System.in);
		String name; // 문자 저장 변수
		int kor; // 정수 저장 변수
		int eng; // 영어
		int mat; // 수학
		// int kor, eng, mat; 다중 변수선언
		// int kor = 33; 변수선언 및 값 초기화
		// int kor =33, eng= 55; 다중 변수선언 및 값 초기화
		int tot; // 총점
		float avg; // 실수 저장 변수, 평균
		char grd; // 단일 문자 변수, 학점
		//상수선언
		//final 접두사 사용, 상수명은 대문자
		final char SU = '수';
		final char WU = '우';
		final char MI = '미';
		final char YA = '양';
		final char GA = '가';
		// 2. 변수에 값 저장 [ 변수명 = 값]
		System.out.print("이름은:");
		name = scanner.next(); // 문자 = "값"
		System.out.print("국어점수는:");
		kor = scanner.nextInt(); // 숫자 = 값
		System.out.print("영어점수는:");
		eng = scanner.nextInt();
		System.out.print("수학점수는:");
		mat = scanner.nextInt();
		grd = ' ';
		scanner.close();
		System.out.println("-----------------------------");
		// 3. 성적 처리 - 수식 사용
		// [변수 = 피연산자 연산자 피연산자;
		// 산술연산자: + , - , * , / , %
		tot = kor + eng + mat;
		// avg= kor+eng+mat/3;
		avg = tot / 3;
		// if (avg >= 90){grd = '수';}
		// if (80 <= avg <90){grd = '우';} 불가
		/*
		 * if (avg>=80 && avg<90) {grd = '우';} if (avg>=70 && avg<80) {grd =
		 * '미';} if (avg>=60 && avg<70) {grd = '양';} if (avg>=0 && avg<60) {grd
		 * = '가';} if (avg>=80) {grd = '우';} if (avg>=70) {grd = '미';} if
		 * (avg>=60) {grd = '양';} if (avg>=0) {grd = '가';}
		 */
		/*if (avg >= 90) {
			grd = SU;
		} else if (avg >= 80) {
			grd = WU;
		} else if (avg >= 70) {
			grd = MI;
		} else if (avg >= 60) {
			grd = YA;
		} else {
			grd = GA;
		}*/
		//switch 의 평가식의 결과값은 반드시 char, int, 열거형(Enum)형이어야한다
		//단 JDK7부터는 string도사용 가능하다
		/*switch((int)avg){
		case 100:grd = SU;
		case 99:grd = SU;
		case 98:grd = SU;
		case 89:grd = WU;
		case 88:grd = WU;
		case 80:grd = WU;
		case 79:grd = MI;
		case 78:grd = MI;
		case 70:grd = MI;
		case 69:grd = YA;
		case 68:grd = YA;
		case 60:grd = YA;
		case 59:grd = GA;
		case 55:grd = GA;
		case 0:grd = GA;
		}*/
		/*switch((int)avg/10){
		case 10:
		case 9:grd = SU;break;
		case 8:grd = WU;break;
		case 7:grd = MI;break;
		case 6:grd = YA;break;
		case 5:
		case 4:
		case 3:
		case 2:
		case 1:
		case 0:grd = GA;break;
		*/
		switch((int)avg/10){
		case 10:
		case 9:grd = SU;break;
		case 8:grd = WU;break;
		case 7:grd = MI;break;
		case 6:grd = YA;break;
		default :grd = GA;
		}
		// 또 다른 출력문 :
		// 출력문: System.out.println("문자열"+ 변수);
		System.out.println("이름:" + name);
		System.out.println("국어:" + kor);
		System.out.println("영어:" + eng);
		System.out.println("수학:" + mat);
		System.out.println("총점:" + tot);
		System.out.println("평균:" + avg);
		System.out.println("평균학점:" + grd);
	}
}
